Skip to content

正则表达式模块

正则表达式(Regular Expression)是非常强大的字符串匹配工具,每种编程语言都会用到,在 Python 中,模块名是 re。

正则表达式语法

正则表达式语法

常用函数主要有:

compile

compile(reg)

compile 方法,初始化正则表达式 reg。

例如,下述代码初始了一个寻找以 d 为结尾的单词的正则表达式。

python
import re
pattern = re.compile('\w*d')

split

split([pattern], words)

split 方法,以 pattern 正则表达式来切割 words,返回字符串列表。

例如,下述代码切割了以 d 为结尾的单词。

python
import re
pattern = re.compile('[a-z][^\\s]*d')
words = 'A friend in need is a friend indeed.'
result = pattern.split(words)
#result = re.split(pattern, words) #这样也可以
print(result)

findall

findall([pattern], words)

findall 方法,以 pattern 正则表达式来匹配 words,返回匹配的字符串列表。

例如,下述代码匹配了所有以 d 为结尾的单词。

python
import re
pattern = re.compile('[a-z][^\\s]*d')
words = 'A friend in need is a friend indeed.'
result = pattern.findall(words)
#result = re.findall(pattern, words) #这样也可以
print(result)

sub

sub([pattern], rep, words)

sub 方法,以 pattern 正则表达式来匹配 words,并将匹配的字符串替换为 rep,返回替换后的字符串列表。

例如,下述代码匹配了所有以 d 为结尾的单词,变成 replaced。

暂时在线运行不了

python
import re
pattern = re.compile('[a-z][^\\s]*d')
words = 'A friend in need is a friend indeed.'
result = pattern.sub('replaced', words)
#result = re.sub(pattern, 'replaced', words) #这样也可以
print(result)

正则表达式在线测试工具

正则表达式在线测试工具